#!/usr/bin/env python 
# -*- coding:utf-8 -*-

# 调用定义函数
# 1) 关键字参数：关键参数、默认参数
def myFunction(str1, str2, age=30):
    "打印传入的字符串"
    print "str1:", str1
    print "str2:", str2
    print "age:", age
    return
# 调用自定义函数,关键字参数允许函数调用时参数的顺序与声明时不一致
myFunction(str2="yifeng",str1="sun")

# 2）不定长参数
def printInfo(arg, *vartuple):
    print "--不定长参数--"
    print "arg;", arg
    for var in vartuple:
        print "var:", var
    return
# 调用自定义函数,
printInfo("sun", "yi", "feng")

# 3）匿名函数（lambda函数），语法lambda...:expression
# 定义两个参数，这两个参数相加，复制给sum
sum = lambda arg1, arg2: arg1 + arg2
# 调用sum函数，打印结果
print "相加后的值为 : ", sum( 10, 20 )
print "相加后的值为 : ", sum( 20, 20 )

# 4）return语句：return语句后面无表达式，则返回None

# 5）变量作用域（同java）

